package com.funtl.framework.java.common.util.bean;



/**
 * 通用对象工具
 * @author lwm
 *
 */
public class BeanUtil {
	/**
	 * 整合原对象数据至新对象中，仅替换空数据 <br />
	 * 如：newAdmin的name属性为空，则将oldAdmin的name属性替换进新对象中
	 * @param newObj 新数据对象
	 * @param oldObj 原数据对象
	 */
	public static void beanToBean(Object newObj, Object oldObj) {
		String[] newPts = Reflex.getPropertyTypes(newObj);
		String[] oldPts = Reflex.getPropertyTypes(oldObj);
		
		for (int i = 0 ; i < newPts.length ; i++) {
			for (int x = 0 ; x < oldPts.length ; x++) {
				if (newPts[i].equals(oldPts[x]) && Reflex.getValue(newObj, newPts[i]) == null) {
					Reflex.setValue(newObj, newPts[i], Reflex.getValue(oldObj, oldPts[x]));
					break;
				}
			}
		}
	}
}
